//1.构造函数 RegExp('查找’,'img')
var str='hello world briup 100 world 200 world';
var pat=new RegExp('world');
console.log(pat);
var pat2=new RegExp('world','igm');
console.log(pat2);
//2.字面量
var pat3=/world/;
var pat4=/world/ig;
console.log(pat3,pat4);

//检测数据类型 内部信息
console.log(typeof pat4);//object
console.log(pat4 instanceof RegExp); //true
console.log(RegExp.prototype.isPrototypeOf(pat4)); //true



//new RegExp 属性：ignoreCase global multiline source flages 可读不可写
console.log(pat4.ignoreCase,pat4.global,pat4.multiline,pat4.source,pat4.flages);

var str='hello world briup 100 world 200 world';
var pat=new RegExp('world','igm');
//test检测是否有 exec检测结果
var res=pat.test(str);
console.log(res,pat.lastIndex); //true 11
var res=pat.test(str);
console.log(res,pat.lastIndex); //true 27
var res=pat.test(str);
console.log(res,pat.lastIndex);//true 37
var res=pat.test(str);
console.log(res,pat.lastIndex);//false 0
var res=pat.test(str);
console.log(res,pat.lastIndex); //true 11

var pat=/world/im;//pat.global==false pat.lastIndex永远为0
var res=pat.test(str);
console.log(res,pat.lastIndex);//true 0
var res=pat.test(str);
console.log(res,pat.lastIndex);//true 0


//1.判断str中是否有world单词
var pat=/world/im;
var res=pat.test(str);
console.log(res);
//2.判断str中出现几次world
var count=0;
var pat4=/world/img;
while(pat4.test(str)){
   count++;
}
console.log(count);//3

var pat=/world/img;
var res=pat.exec(str);
console.log(res,pat.lastIndex);//[  'world',index: 6,input: 'hello world briup 100 world 200 world',groups: undefined] 11

//查找所有的world并放到一个数组中
var pat=/world/img;
var result=[];
var res=null;
while(res=pat.exec(str)){
 result.push(res[0]);
}
console.log(result);//[ 'world', 'world', 'world' ]